使用 docker 安裝 Wordpress 這個相當熱門的 CMP 內容管理平台,可以省去不少過往架設 LAMP 伺服器的一系列設定困難度。可惜的是,若依照 Wordpress 官方的 docker 版本直接在遠端的伺服器運行,還是會遇上一些狀況的。這篇筆記下過程和處理方法。
對於 Wordpress 官方的 docker 映像檔,你需要先給定 wordpress 設定檔,來讓 Wordpress 得以上傳檔案、分配到可使用的最大記憶體數量...等。否則你會發現當你完成初步設定後,光要登入後台就出現「連線已重設」等一連串錯誤。
file_uploads = On
memory_limit = 64M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 600
version: '3'
 
services:
   db:
     image: mysql:5.7
     container_name: mysql_wordpress
     volumes:
       - /user/wordpress/db_data:/var/lib/mysql
     restart: always
     ports:
       - "3307:3306"
     environment:
       MYSQL_ROOT_PASSWORD: wordpress_root_password
       MYSQL_DATABASE: wordpress_db
       MYSQL_USER: wordpress_user
       MYSQL_PASSWORD: wordpress_password
 
   wordpress:
     container_name: wordpress
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8888:80"
     restart: always
     volumes:
       - /user/wordpress/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress_user
       WORDPRESS_DB_PASSWORD: wordpress_password
       WORDPRESS_DB_NAME: wordpress_db
volumes:
    db_data: {}
將上述的 docker-compose.yml 和 uploads.ini 上傳到遠端伺服器內的 /user/wordpress 資料夾內
執行 docker-compose up -d
在網址列中輸入:http://<遠端伺服器 IP 位置>:<對外埠號>,你就會看到熟悉的安裝畫面
輸入你的網站的資料後,按下「安裝 Wordpress」
接著用方才的資料登入後台
你就會看到後台畫面
此時若直接輸入 http://<遠端伺服器 IP 位置>:<對外埠號>,會導入到網誌的首頁